/**
 * created the 27 sept. 07
 */
package choco.global.scheduling.trees;

import choco.global.scheduling.trees.abstrees.AbstractNodeInfo;
import choco.global.scheduling.trees.abstrees.AbstractThetaLambdaTree;
import choco.integer.IntDomainVar;

/**
 * The Theta tree is used in the edge finding rule of the disjunctive constraints.
 * @author Arnaud Malapert (arnaud.malapert@emn.fr)
 *
 */
public class DisjTreeTL extends AbstractThetaLambdaTree{

	
	public DisjTreeTL(IntDomainVar[] vars, int[] processingTimes,boolean ectOrLst) {
		super(vars, processingTimes, ectOrLst);
	}
	
	@Override
	protected AbstractNodeInfo createEmptyNodeInfo() {
		return new DisjNodeInfoTL();
	}
	
	/**
	 * get the theta time of the root node
	 * @return the time for this type of tree
	 */
	public int getTime() {
		return root.infos.getIntValue(0);
	}

	/**
	 * get the lambda time of the root node
	 * @return the time for this type of tree
	 */
	
	public int getGrayTime() {
		return root.infos.getIntValue(2);
	}
	/**
	 * get responsible task for {@link DisjTreeTL#getGrayTime()}
	 * @return the responsible task
	 */
	
	public final int getGrayResponsibleTask() {
		return root.infos.getIntValue(4);
	}
	


	


}
